The figure below shows how states and errors are treated.
StateChange (state manager)
Activates the new state required by M1_ReqState
StateName (state macro)
|
init state |
- Initializes exceptions on new state M1_CmdState <><> means Not Equal M1_ReqState and on errors set in M1_StatusWord - Goes to exit state when an exception occurs - Performs all actions to properly enter this state (init variables, pipes, ...) - Sends commands to the submitted axis modules by setting Ai_CmdState to StateName and waits for their acknowledgement in Ai_AckState - Acknowledges end of initialization by setting M1_AckState to M1_ReqState |
|
run state |
- Waits for any function calls, activate function if called |
|
exit state |
- Performs all actions to properly leave this state - Acknowledges running by setting M1_AckState to 'busy' - If error stop occurs, activates STATE_ErrStop, otherwise sets new requested state M1_ReqState to M1_CmdState and activates StateChange |
To add a new state, do as follows:
|
Copyright © 2015 Kollmorgen™ |
|